package com.demo;


import java.util.Scanner;



public class  Bank2 {

    public static void main(String[] args) {
        System.out.println("请插入卡号：");
        Scanner sc=new Scanner(System.in);
        String card=sc.nextLine();
        System.out.println("正在读卡，请稍后...");
        int errortime=0;
        User log=null;
        while(true) {
            System.out.println("请输入密码：");
            String password=sc.nextLine();
            //验证
            log=DB.yanzheng(card, password);
            if(log==null) {
                errortime++;
                System.out.println("密码错误"+errortime+"次,还剩余"+(3-errortime)+"次");
                if(errortime==3) {
                    System.out.println("密码错误次数达到3次，正在退卡");
                    System.exit(0);
                }
            }
            else {
                break;
            }
        }
        while (true) {
            System.out.println("1取款    2查询  3存款  4退卡");
            int cmd = sc.nextInt();
            switch (cmd) {
                case 1:
                    qukuan(log);//取款
                    break;
                case 2:
                    chaxun(log);//查询
                    break;
                case 3:
                    cunkun(log);//存款
                    break;
                case 4:
                    tuika();//退卡
                    System.exit(0);
                    break;
                default:
                    System.out.println("输入错误，没有此选项，请重新选择");
                    break;
            }
        }
    }

    //退卡
    private static void tuika() {
        System.out.println("正在退卡,请稍后...");
        System.out.println("请取回此卡");

    }

    //存款
    private static void cunkun(User use) {
        while(true) {
            System.out.println("请将叠整齐的钞票放入入钞口");
            Scanner scanner=new Scanner(System.in);
            int num=scanner.nextInt();
//			1000000000 ---校验输入金额是否是100的整数倍。
            if(num>0 && num%100==0) {
                use.setMoney(use.getMoney()+num);
                System.out.println("正在验钞，请稍后...");
                System.out.println("已放入"+(num/100)+"张。是否提交:1表示提交，2表示退出");
                int b=scanner.nextInt();
                if(b==1) {
                    System.out.println("存款成功");
                }
            }
            else {
                System.out.println("必须输入100的倍数");
            }
            System.out.println("是否继续：1表示继续，2表示退出");
            int a =scanner.nextInt();
            if(a==2) {
                break;
            }
        }
    }

    //查询
    private static void chaxun(User use) {
        while(true) {
            System.out.println("您的余额为"+use.getMoney()+"元");
            System.out.println("是否继续：1表示继续，2表示退出");
            Scanner scanner=new Scanner(System.in);
            int a =scanner.nextInt();
            if(a==2) {
                break;
            }
        }
    }

    //取款
    private static void qukuan(User use) {
        while(true) {
            System.out.println("请输入取款金额");
            Scanner scanner=new Scanner(System.in);
            int num=scanner.nextInt();
            //100 ---校验输入金额是否是100的整数倍。
            if(num>0 && num%100==0) {
                if(use.getMoney()>=num) {
                    use.setMoney(use.getMoney()-num);
                    System.out.println("请取走您的钞票");
                }else {
                    System.out.println("余额不足");
                }
            }
            else {
                System.out.println("必须输入100的倍数");
            }
            System.out.println("是否继续：1表示继续，2表示退出");
            int a =scanner.nextInt();
            if(a==2) {
                break;
            }
        }
    }
}

